Use g_clear_pointer to unparent widgets
authorTimm Bäder <mail@baedert.org>
Tue, 13 Nov 2018 19:53:14 +0000 (20:53 +0100)
committerTimm Bäder <mail@baedert.org>
Tue, 13 Nov 2018 19:53:14 +0000 (20:53 +0100)
14 files changed:
gtk/gtkcenterbox.c
gtk/gtkcheckbutton.c
gtk/gtkcolorswatch.c
gtk/gtkentry.c
gtk/gtkfontchooserwidget.c
gtk/gtkmenuitem.c
gtk/gtknotebook.c
gtk/gtkprogressbar.c
gtk/gtkrange.c
gtk/gtkscale.c
gtk/gtkscrollbar.c
gtk/gtksearchbar.c
gtk/gtkstatusbar.c
gtk/gtktoolbar.c

index c99d71e26200bb33716cfbd1e4ff8d0a5caad5e1..07bb9cc8070f5a10745630dd670cccdded6ed843 100644 (file)
@@ -622,23 +622,9 @@ gtk_center_box_dispose (GObject *object)
 {
   GtkCenterBox *self = GTK_CENTER_BOX (object);
 
-  if (self->start_widget)
-    {
-      gtk_widget_unparent (self->start_widget);
-      self->start_widget = NULL;
-    }
-
-  if (self->center_widget)
-    {
-      gtk_widget_unparent (self->center_widget);
-      self->center_widget = NULL;
-    }
-
-  if (self->end_widget)
-    {
-      gtk_widget_unparent (self->end_widget);
-      self->end_widget = NULL;
-    }
+  g_clear_pointer (&self->start_widget, gtk_widget_unparent);
+  g_clear_pointer (&self->center_widget, gtk_widget_unparent);
+  g_clear_pointer (&self->end_widget, gtk_widget_unparent);
 
   G_OBJECT_CLASS (gtk_center_box_parent_class)->dispose (object);
 }
index 09cecb126b4356b81ad13f94da2096e732736db8..1be4a1e3a826dcc12aeaa3b925d45b2d792becf6 100644 (file)
@@ -135,8 +135,7 @@ gtk_check_button_finalize (GObject *object)
 {
   GtkCheckButtonPrivate *priv = gtk_check_button_get_instance_private (GTK_CHECK_BUTTON (object));
 
-  if (priv->indicator_widget)
-    gtk_widget_unparent (priv->indicator_widget);
+  g_clear_pointer (&priv->indicator_widget, gtk_widget_unparent);
 
   G_OBJECT_CLASS (gtk_check_button_parent_class)->finalize (object);
 }
index b1678fefe6db809a90cc4ce4473b98bc82a4654e..516326e6c1a2ef4ae318726adfe030b53cd9c1b7 100644 (file)
@@ -509,11 +509,7 @@ swatch_dispose (GObject *object)
   GtkColorSwatch *swatch = GTK_COLOR_SWATCH (object);
   GtkColorSwatchPrivate *priv = gtk_color_swatch_get_instance_private (swatch);
 
-  if (priv->popover)
-    {
-      gtk_widget_destroy (priv->popover);
-      priv->popover = NULL;
-    }
+  g_clear_pointer (&priv->popover, gtk_widget_destroy);
 
   G_OBJECT_CLASS (gtk_color_swatch_parent_class)->dispose (object);
 }
index f5c3bb0df96bc0073563e58db8b1c1dc4e61d13e..682cce629c2e1e238548a727c621dcfe2b7337be 100644 (file)
@@ -2788,8 +2788,7 @@ gtk_entry_finalize (GObject *object)
   if (priv->attrs)
     pango_attr_list_unref (priv->attrs);
 
-  if (priv->progress_widget)
-    gtk_widget_unparent (priv->progress_widget);
+  g_clear_pointer (&priv->progress_widget, gtk_widget_unparent);
 
   G_OBJECT_CLASS (gtk_entry_parent_class)->finalize (object);
 }
index ae9bc7575689e3ec58460954e0cac07fb56bfcd1..f1eed958fb27949ac1156ffcdf13cf070205fb5a 100644 (file)
@@ -669,11 +669,7 @@ gtk_font_chooser_widget_dispose (GObject *object)
   GtkFontChooserWidget *self = GTK_FONT_CHOOSER_WIDGET (object);
   GtkFontChooserWidgetPrivate *priv = gtk_font_chooser_widget_get_instance_private (self);
 
-  if (priv->stack)
-    {
-      gtk_widget_unparent (priv->stack);
-      priv->stack = NULL;
-    }
+  g_clear_pointer (&priv->stack, gtk_widget_unparent);
 
   G_OBJECT_CLASS (gtk_font_chooser_widget_parent_class)->dispose (object);
 }
index 34642a6cac3596788a4992dd280b7b860455c8ec..f1843ab349ff67d7f476068ed0624942e5240fe6 100644 (file)
@@ -745,12 +745,7 @@ gtk_menu_item_dispose (GObject *object)
 
   g_clear_object (&priv->motion_controller);
   g_clear_object (&priv->action_helper);
-
-  if (priv->arrow_widget)
-    {
-      gtk_widget_unparent (priv->arrow_widget);
-      priv->arrow_widget = NULL;
-    }
+  g_clear_pointer (&priv->arrow_widget, gtk_widget_unparent);
 
   G_OBJECT_CLASS (gtk_menu_item_parent_class)->dispose (object);
 }
@@ -846,11 +841,7 @@ gtk_menu_item_detacher (GtkWidget *widget,
   g_return_if_fail (priv->submenu == (GtkWidget*) menu);
 
   priv->submenu = NULL;
-  if (priv->arrow_widget)
-    {
-      gtk_widget_unparent (priv->arrow_widget);
-      priv->arrow_widget = NULL;
-    }
+  g_clear_pointer (&priv->arrow_widget, gtk_widget_unparent);
 }
 
 static void
index c873ec3b2334d7da6f67377dabe080d29abc2806..1ed14d842fc3b39cf29b19a00acc476e6fb9a91e 100644 (file)
@@ -2864,11 +2864,7 @@ update_arrow_nodes (GtkNotebook *notebook)
         }
       else
         {
-          if (priv->arrow_widget[i])
-            {
-              gtk_widget_unparent (priv->arrow_widget[i]);
-              priv->arrow_widget[i] = NULL;
-            }
+          g_clear_pointer (&priv->arrow_widget[i], gtk_widget_unparent);
         }
     }
 }
index 3a53471cf71d54a4ea59009cb6dba5cc1b2294b3..921386cb12d362b779e8309787a94a63aa63b3e6 100644 (file)
@@ -597,8 +597,7 @@ gtk_progress_bar_finalize (GObject *object)
 
   g_free (priv->text);
 
-  if (priv->label)
-    gtk_widget_unparent (priv->label);
+  g_clear_pointer (&priv->label, gtk_widget_unparent);
 
   gtk_widget_unparent (priv->progress_widget);
   gtk_widget_unparent (priv->trough_widget);
@@ -1014,11 +1013,7 @@ gtk_progress_bar_set_show_text (GtkProgressBar *pbar,
     }
   else
     {
-      if (priv->label)
-        {
-          gtk_widget_unparent (priv->label);
-          priv->label = NULL;
-        }
+      g_clear_pointer (&priv->label, gtk_widget_unparent);
     }
 
   gtk_widget_queue_resize (GTK_WIDGET (pbar));
index 26fd7d8a7f9c34958e0245dc1e66721b4fb7bd9d..d745e9317414545cc58f20642212d2efe253b61a 100644 (file)
@@ -1117,8 +1117,7 @@ gtk_range_set_show_fill_level (GtkRange *range,
     }
   else
     {
-      gtk_widget_unparent (priv->fill_widget);
-      priv->fill_widget = NULL;
+      g_clear_pointer (&priv->fill_widget, gtk_widget_unparent);
     }
 
   g_object_notify_by_pspec (G_OBJECT (range), properties[PROP_SHOW_FILL_LEVEL]);
@@ -1289,15 +1288,10 @@ gtk_range_finalize (GObject *object)
   GtkRange *range = GTK_RANGE (object);
   GtkRangePrivate *priv = gtk_range_get_instance_private (range);
 
-  gtk_widget_unparent (priv->slider_widget);
-
-  if (priv->fill_widget)
-    gtk_widget_unparent (priv->fill_widget);
-
-  if (priv->highlight_widget)
-    gtk_widget_unparent (priv->highlight_widget);
-
-  gtk_widget_unparent (priv->trough_widget);
+  g_clear_pointer (&priv->slider_widget, gtk_widget_unparent);
+  g_clear_pointer (&priv->fill_widget, gtk_widget_unparent);
+  g_clear_pointer (&priv->highlight_widget, gtk_widget_unparent);
+  g_clear_pointer (&priv->trough_widget, gtk_widget_unparent);
 
   G_OBJECT_CLASS (gtk_range_parent_class)->finalize (object);
 }
@@ -2855,8 +2849,7 @@ _gtk_range_set_has_origin (GtkRange *range,
     }
   else
     {
-      gtk_widget_unparent (priv->highlight_widget);
-      priv->highlight_widget = NULL;
+      g_clear_pointer (&priv->highlight_widget, gtk_widget_unparent);
     }
 }
 
index ed2debbea795845145ac1eaf96216db542cd8537..9d3673e71534c47170e4d94ee92f575850aabf5b 100644 (file)
@@ -1143,8 +1143,7 @@ gtk_scale_set_draw_value (GtkScale *scale,
         }
       else if (priv->value_widget)
         {
-          gtk_widget_unparent (priv->value_widget);
-          priv->value_widget = NULL;
+          g_clear_pointer (&priv->value_widget, gtk_widget_unparent);
           gtk_range_set_round_digits (GTK_RANGE (scale), -1);
         }
 
@@ -1580,8 +1579,7 @@ gtk_scale_finalize (GObject *object)
 
   gtk_scale_clear_marks (scale);
 
-  if (priv->value_widget)
-    gtk_widget_unparent (priv->value_widget);
+  g_clear_pointer (&priv->value_widget, gtk_widget_unparent);
 
   G_OBJECT_CLASS (gtk_scale_parent_class)->finalize (object);
 }
@@ -1675,17 +1673,9 @@ gtk_scale_clear_marks (GtkScale *scale)
   g_slist_free_full (priv->marks, gtk_scale_mark_free);
   priv->marks = NULL;
 
-  if (priv->top_marks_widget)
-    {
-      gtk_widget_unparent (priv->top_marks_widget);
-      priv->top_marks_widget = NULL;
-    }
 
-  if (priv->bottom_marks_widget)
-    {
-      gtk_widget_unparent (priv->bottom_marks_widget);
-      priv->bottom_marks_widget = NULL;
-    }
+  g_clear_pointer (&priv->top_marks_widget, gtk_widget_unparent);
+  g_clear_pointer (&priv->bottom_marks_widget, gtk_widget_unparent);
 
   context = gtk_widget_get_style_context (GTK_WIDGET (scale));
   gtk_style_context_remove_class (context, "marks-before");
index 3c4be33b7abb9a40876002fc93e496de18c1d6b2..64d81769cf1ca9b80e6d016ac330451ccfaf2055 100644 (file)
@@ -200,11 +200,7 @@ gtk_scrollbar_dispose (GObject *object)
   GtkScrollbar *self = GTK_SCROLLBAR (object);
   GtkScrollbarPrivate *priv = gtk_scrollbar_get_instance_private (self);
 
-  if (priv->box)
-    {
-      gtk_widget_unparent (priv->box);
-      priv->box = NULL;
-    }
+  g_clear_pointer (&priv->box, gtk_widget_unparent);
 
   G_OBJECT_CLASS (gtk_scrollbar_parent_class)->dispose (object);
 }
index 6ccd1ca0f03d0fecd2c3a0b0b19c31e04d189aa0..37d78a826fc688765e9732606891eb1dc019da98 100644 (file)
@@ -364,11 +364,7 @@ gtk_search_bar_dispose (GObject *object)
       _gtk_bin_set_child (GTK_BIN (bar), NULL);
     }
 
-  if (priv->revealer != NULL)
-    {
-      gtk_widget_unparent (priv->revealer);
-      priv->revealer = NULL;
-    }
+  g_clear_pointer (&priv->revealer, gtk_widget_unparent);
 
   gtk_search_bar_set_entry (bar, NULL);
   gtk_search_bar_set_key_capture_widget (bar, NULL);
index ebf682c3d5cc5b93b8d9cac429f170837854f866..f2e0caab961644be2e94a7aa81eca2fd201c1d3f 100644 (file)
@@ -121,11 +121,7 @@ gtk_statusbar_dispose (GObject *object)
 {
   GtkStatusbarPrivate *priv = gtk_statusbar_get_instance_private (GTK_STATUSBAR (object));
 
-  if (priv->frame)
-    {
-      gtk_widget_unparent (priv->frame);
-      priv->frame = NULL;
-    }
+  g_clear_pointer (&priv->frame, gtk_widget_unparent);
 
   G_OBJECT_CLASS (gtk_statusbar_parent_class)->dispose (object);
 }
index 3e1a1ee3c998e09c97ca465e6d6cc60071080194..dbf53dd9cd5c166679b8639026d0754bbeee5960 100644 (file)
@@ -2596,11 +2596,7 @@ gtk_toolbar_dispose (GObject *object)
   GtkToolbar *toolbar = GTK_TOOLBAR (object);
   GtkToolbarPrivate *priv = toolbar->priv;
 
-  if (priv->arrow_button)
-    {
-      gtk_widget_unparent (priv->arrow_button);
-      priv->arrow_button = NULL;
-    }
+  g_clear_pointer (&priv->arrow_button, gtk_widget_unparent);
 
   if (priv->menu)
     {